[INFO] fetching crate rs_sudoku 0.1.2...
[INFO] checking rs_sudoku-0.1.2 against master#09a371361240e42b0d69438fd1179efcf212e576 for pr-157814-crater-rollup
[INFO] extracting crate rs_sudoku 0.1.2 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate rs_sudoku 0.1.2
[INFO] finished tweaking crates.io crate rs_sudoku 0.1.2
[INFO] tweaked toml for crates.io crate rs_sudoku 0.1.2 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate rs_sudoku 0.1.2 on toolchain 09a371361240e42b0d69438fd1179efcf212e576
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 53 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.2.11 (available: v0.8.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rand_xoshiro v0.1.0
[INFO] [stderr]   Downloaded criterion-plot v0.3.1
[INFO] [stderr]   Downloaded criterion v0.2.11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce
[INFO] running `Command { std: "docker" "start" "63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce" "/opt/rustwide/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce" "/opt/rustwide/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking rand_xoshiro v0.1.0
[INFO] [stderr]     Checking rs_sudoku v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/candidate_set.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         (self.0 & !SOLVED)
[INFO] [stdout]    |         ^                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 60 -         (self.0 & !SOLVED)
[INFO] [stdout] 60 +         self.0 & !SOLVED 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/slow_index.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub gp: Box<GenPosition>,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub gp: Box<dyn GenPosition>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/slow_index.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub gp: Box<GenPosition>,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub gp: Box<dyn GenPosition>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/slow_index.rs:106:43
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn set_gen_position(self, gp: Box<GenPosition>) -> Self {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn set_gen_position(self, gp: Box<dyn GenPosition>) -> Self {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]   --> src/box_line.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 |             .into_iter()
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 13 -             .into_iter()
[INFO] [stdout] 13 +             .iter()
[INFO] [stdout]    |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 12 -         [Grouping::RowType, Grouping::ColumnType]
[INFO] [stdout] 13 -             .into_iter()
[INFO] [stdout] 12 +         IntoIterator::into_iter([Grouping::RowType, Grouping::ColumnType])
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]   --> src/box_line.rs:24:26
[INFO] [stdout]    |
[INFO] [stdout] 24 |                         .into_iter()
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 24 -                         .into_iter()
[INFO] [stdout] 24 +                         .iter()
[INFO] [stdout]    |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 23 -                     let removed: usize = val_pos
[INFO] [stdout] 24 -                         .into_iter()
[INFO] [stdout] 23 +                     let removed: usize = IntoIterator::into_iter(val_pos)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/bin/pre_compute_index.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | type IterFn = Fn(usize) -> RelatedIndexIterator;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 3 | type IterFn = dyn Fn(usize) -> RelatedIndexIterator;
[INFO] [stdout]   |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion-plot v0.3.1
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.2.11
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/bin/pre_compute_index.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | type IterFn = Fn(usize) -> RelatedIndexIterator;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 3 | type IterFn = dyn Fn(usize) -> RelatedIndexIterator;
[INFO] [stdout]   |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/candidate_set.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         (self.0 & !SOLVED)
[INFO] [stdout]    |         ^                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 60 -         (self.0 & !SOLVED)
[INFO] [stdout] 60 +         self.0 & !SOLVED 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/slow_index.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub gp: Box<GenPosition>,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub gp: Box<dyn GenPosition>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/slow_index.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub gp: Box<GenPosition>,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub gp: Box<dyn GenPosition>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/slow_index.rs:106:43
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn set_gen_position(self, gp: Box<GenPosition>) -> Self {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn set_gen_position(self, gp: Box<dyn GenPosition>) -> Self {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]   --> src/box_line.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 |             .into_iter()
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 13 -             .into_iter()
[INFO] [stdout] 13 +             .iter()
[INFO] [stdout]    |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 12 -         [Grouping::RowType, Grouping::ColumnType]
[INFO] [stdout] 13 -             .into_iter()
[INFO] [stdout] 12 +         IntoIterator::into_iter([Grouping::RowType, Grouping::ColumnType])
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]   --> src/box_line.rs:24:26
[INFO] [stdout]    |
[INFO] [stdout] 24 |                         .into_iter()
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 24 -                         .into_iter()
[INFO] [stdout] 24 +                         .iter()
[INFO] [stdout]    |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 23 -                     let removed: usize = val_pos
[INFO] [stdout] 24 -                         .into_iter()
[INFO] [stdout] 23 +                     let removed: usize = IntoIterator::into_iter(val_pos)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.12s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] running `Command { std: "docker" "inspect" "63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce", kill_on_drop: false }`
[INFO] [stdout] 63f9d229f88fd5fd2c88c2376949f93014c65e0fb990b76e3e048fad1c4cacce
